﻿<%@ Page Title="<%# Iudicium.Configuracion.ConfiguracionIudicium.GetApplicationName() %>" Language="C#" MasterPageFile="~/MasterPage.master" AutoEventWireup="true" CodeFile="FormularioRol.aspx.cs" Inherits="Seguridad_Roles_FormularioRol" %>

<asp:Content ID="Content1" ContentPlaceHolderID="head" Runat="Server">
</asp:Content>
<asp:Content ID="Content2" ContentPlaceHolderID="ContentPlaceHolder1" Runat="Server">

    <div class="ui-widget-content ui-corner-all" id="marcoForm">
        <h3 id="titulo" class="ui-widget-header ui-corner-all">Administracion de Seguridad: Roles</h3>
        <div id="content">
            <div id="desc_form">
                Formulario para crear o modificar los Roles de Usuario registrados en el sistema.
            </div>
            <iudicium:Notify ID="ControlNotificacion" runat="server" />
            <div id="camposForm" class="validationGroup">
                <div class="field">
                    <div class="label">
                        <asp:Label ID="NombreRolLabel" runat="server" Text="Nombre del Rol"
                            AssociatedControlID="NombreRolTextBox"></asp:Label>
                        <asp:Label ID="NombreRolLabelErrorMessage" runat="server"
                            CssClass="mensajes">
                        </asp:Label>
                    </div>
                    <asp:TextBox ID="NombreRolTextBox" runat="server"></asp:TextBox>
                </div>
                <div class="field">
                    <div class="label">
                        <asp:Label ID="EstadoLabel" runat="server" Text="Estado"></asp:Label>
                    </div>
                    <asp:RadioButton ID="ActivoRadioButton" runat="server"
                        GroupName="Estado"
                        Text="Activo" />
                    <asp:RadioButton ID="InactivoRadioButton" runat="server"
                        Checked="true"
                        GroupName="Estado"
                        Text="Inactivo" />
                </div>
                <div class="field">
                    <div class="label">
                        <asp:Label ID="PermisosLabel" runat="server" Text="Permisos"></asp:Label>
                        (Seleccionar: <a href="#" id="CmdSelectAll">Todos</a> / <a href="#" id="CmdUnselectAll">Ninguno</a>)
                    </div>
                    <asp:Repeater ID="PermisosRepeater" runat="server"
                        DataSourceID="PermisosObjectDataSource">
                        <ItemTemplate>
                            <div>
                                <asp:CheckBox ID="TienePermisoCheckBox" runat="server"
                                    CssClass="permisos"
                                    Checked="<%# Bind('TienePermiso') %>"
                                    Text="<%# Bind('NombrePermiso') %>" />
                                <asp:HiddenField ID="PermisoIdHiddenField" runat="server"
                                    Value="<%# Bind('PermisoId') %>" />
                            </div>
                        </ItemTemplate>
                    </asp:Repeater>
                    <asp:ObjectDataSource ID="PermisosObjectDataSource" runat="server"
                        TypeName="Iudicium.Seguridad.CRN.PermisoCRN"
                        SelectMethod="GetPermisosByRol" 
                        OnSelected="PermisosObjectDataSource_Selected">
                        <SelectParameters>
                            <asp:ControlParameter ControlID="RolIdHiddenField" PropertyName="Value" Name="rolId" DefaultValue="0" Type="Int32" />
                        </SelectParameters>
                    </asp:ObjectDataSource>
                </div>
                
                <div id="botonesForm">
                    <asp:LinkButton ID="GuardarLinkButton" runat="server"
                        Text="Guardar"
                        CssClass="button causesValidation"
                        OnClick="GuardarLinkButton_Click">
                    </asp:LinkButton>
                    <asp:HyperLink ID="CancelarHyperlink" runat="server"
                        NavigateUrl="~/Seguridad/Roles/ListaRoles.aspx"
                        CssClass="cancelOption"
                        Text="Cancelar">
                    </asp:HyperLink>
                </div>
            </div>
        </div>
    </div>
    <asp:HiddenField ID="RolIdHiddenField" runat="server" Value="0" />
    
    
    <script type="text/javascript">
        $(document).ready(function() {
            
            $("#aspnetForm").validate({
                onsubmit: false,
                errorPlacement: function(error, element) {
                    error.appendTo(element.prev("div.label").children("span.mensajes")); //pone el mensaje de error en el label del field
                },
                rules: {
                    <%= NombreRolTextBox.UniqueID %>: {
                        required: true
                    }
                },
                messages: {
                    <%= NombreRolTextBox.UniqueID %>: {
                        required: " Ingrese el nombre del Rol"
                    }
                }
            });

            $("#CmdSelectAll").click(function(){
                $(".permisos").children("input").attr("checked", "checked");
                return false;
            });

            $("#CmdUnselectAll").click(function(){
                $(".permisos").children("input").removeAttr("checked");
                return false;
            });
        });
        
    </script>

</asp:Content>

